package com.san.system.dao;

import com.san.base.dao.BaseDao;
import com.san.system.domain.RoleMenuDO;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Mapper;

/**
 * 角色与菜单对应关系
 */
@Mapper
public interface RoleMenuDao extends BaseDao{
	/**
	 * 按条件查询角色权限列表
	 * @param map
	 * @return
	 */
	List<RoleMenuDO> list(Map<String,Object> map);
	
	/**
	 * 按条件查询角色权限数量
	 * @param map
	 * @return
	 */
	int count(Map<String,Object> map);
	
	/**
	 * 根据角色ID获取菜单列表
	 * @param roleId
	 * @return
	 */
	List<Long> listMenuIdByRoleId(Long roleId);
	
	/**
	 * 清空角色权限
	 * @param roleId
	 * @return
	 */
	int removeByRoleId(Long roleId);
	
	/**
	 * 删除角色菜单
	 * @param menuId
	 * @return
	 */
	int removeByMenuId(Long menuId);
	
	/**
	 * 批量保存角色权限
	 * @param list
	 * @return
	 */
	int batchSave(List<RoleMenuDO> list);
}
